Packet-based communication networks transmit data encapsulated in packets. To facilitate the delivery of rich services to clients or end users, a packet-based network system may utilize service engines to provide certain network services not included in the standard Internet Protocol (IP). These services may be implemented as applications running on the service engines, which may be implemented in integrated service blades or external network appliances. Conventionally, a network administrator or end user must specify static rules that govern which packet flows or packets are routed to a particular application for processing. Such static rules or instructions may be defined for each application or service engine. All traffic that matches a specified set of static rules is re-routed by the forwarding engine to a particular application for processing. By way of example, a user may specify a rule that a particular virtual local area network (VLAN) be routed and processed by a particular application. However, if the traffic routed to an application is more than the service engine can process, the service engine can become a bottleneck as the data throughput of each service engine may be significantly below that of the switch.